Geodescriptiva

2024 - 2025

Conti, D; Ramirez, S

Introducción

Los datos espaciales, (datos geográficos o datos georreferenciados), son aquellos que contienen información de una localización o área geográfica de la superficie anclados al espacio.

La cartografía, el arte de la cartografía, es una habilidad ancestral que implica comunicación, atención al detalle y un componente creativo.

Un mapa cuidadosamente elaborado puede ser la mejor manera de comunicar los resultados de su trabajo, pero un diseño deficiente puede causar una mala impresión.

Entre los problemas de diseño más comunes se incluyen: - la ubicación - el tamaño - la legibilidad deficientes del texto - selección descuidada de colores (guía de estilos)

Los mapas de aspecto amateur pueden dificultar la comprensión de información importante por parte del público y debilitar la presentación de una investigación de datos profesional.

História del análisis geospacial (caso Snow, 1856)

Los mapas se han utilizado durante miles de años para una amplia variedad de propósitos. Algunos ejemplos históricos incluyen mapas de edificios y propiedad de la tierra en la antigua dinastía babilónica, hace más de 3000 años, y el mapamundi de Ptolomeo en su obra maestra , Geografía, hace casi 2000 años.

El primer análisis de datos espaciales fue realizado por el médico John Snow en 1854.

Construyó un famoso mapa que mostraba las muertes causadas por un brote de cólera.

  • Se detectarón 127 muertes en 3 días

  • Se ubicaban en el barrio del Soho de Londres

  • Se posicionaron las bombas de agua del área

Solución:

Descubrió que había un agrupamiento significativo de muertes alrededor de una determinada bomba, y al quitar la manija de la bomba se detuvo el brote.

Conclusiones

El análisis espacial de Snow es considerado el antecedente conocido más antiguo de la ciencia de datos, porque:

  1. La información clave se obtuvo mediante
  • las muertes por cólera
  • las ubicaciones de las bombas de agua
  • el mapa de calles de Londres
  1. Se puede crear un modelo espacial directamente a partir de los datos

  2. El problema solo se resolvió cuando la evidencia basada en datos se combinó con un modelo plausible que explicaba el fenómeno físico.

Que és la geostadística? (Marco teórico)

Estadística para datos espaciales

Tip

El área que se encarga de estudiar y analizar los datos espaciales es la estadística espacial o la estadística para datos espaciales.

Debido a que los datos espaciales surgen en múltiples campos y aplicaciones, hay una gran variedad de tipos de datos, estructuras y escenarios espaciales .

En 1993, N.A.C Cressie clasificó los datos geospaciales, basado en la naturaleza del dominio espacial, de la siguiente forma:

Conceptos Clave

A continuación vamos a representar la localización de los inmuebles vendidos por idealista en Barcelona durante el mes de diciembre de 2018.

p <- ggplot(data = BCN,
       aes(x = LONGITUDE, y = LATITUDE)) + 
  geom_point(col="blue", size = 0.1, alpha = 0.3) +
  coord_fixed()

p = (ggplot(pyBCN, aes(x='LONGITUDE', y='LATITUDE')) +
     geom_point(color='blue', size=0.1, alpha=0.3) +
     coord_fixed() +
     theme_minimal() +
     ggtitle("Pisos en Barcelona") +
     xlab("Longitud") +
     ylab("Latitud"))

En una representación de geodatos o geostadística es importante las siguientes cuestiones:

  • Las coordendadas

  • El marco o contexto espacial

  • Conocimiento del sistema de referencia de coordenadas (Coordinate reference system (CRS)) en las que están georreferenciadas o proyectadas las coordenadas

  • Formato de los datos en los que se están trabajando: vector o raster.

Cambiamos el sistema de referencia de coordenadas al sistema de referencia (CRS) Europeo.

idealista2018_sf <- sf::st_as_sf(BCN,
  coords = c("LATITUDE", "LONGITUDE"),
  crs = 25830) # proyección ETRS89/ UTM zone 30N. Área de uso: Europa    

Generamos el mapa estático para poder representar nuestra información en él.

Warning

El sistema de referencias (CRS) de las coordenadas ha de coincidir con el de los mapas sino no geolocaliza correctamente el punto buscado.

Barcelona <- mapSpain::esp_get_munic(munic = "^Barcelona$") |>
  sf::st_transform(25830) 

# descara imagen de un de mapa estático de las carreteas de Madrid
tile <- maptiles::get_tiles(BCN, provider = "Esri.WorldStreetMap", zoom = 10, crop = TRUE)

# tile <- esp_getTiles(Barcelona, "IGNBase.Gris", zoommin = 3, verbose = FALSE)
ggplot() +
  tidyterra::geom_spatraster_rgb(data = tile) +
  geom_sf(data = idealista2018_sf, 
    col = "blue", size = 0.1, alpha = 0.3) +
  coord_sf(expand = FALSE)

Cambiamos el sistema de referencia de coordenadas al sistema de referencia (CRS) Europeo.

# 1. Crear GeoDataFrame desde DataFrame (suponiendo que tienes 'LATITUDE' y 'LONGITUDE')
# Nota: en Python 'LONGITUDE' es x, 'LATITUDE' es y
gdf = gpd.GeoDataFrame(pyBCN, geometry = gpd.points_from_xy(pyBCN['LONGITUDE'], pyBCN['LATITUDE']), crs = "EPSG:4326") # primero en WGS84

# 2. Reproyectar a EPSG:25830
gdf_utm = gdf.to_crs(epsg = 25830)

Generamos el mapa estático para poder representar nuestra información en él.

# 3. Definir límites para el mapa base
# bounds = gdf_utm.total_bounds  # xmin, ymin, xmax, ymax
bounds = [905729.8210,4580494.7340,958814.7353,4610801.5327]

Podemos buscar el boundary box en la siguiente url: http://bboxfinder.com/

# 4. Plot con mapa base (tiles tipo Esri.WorldStreetMap)
fig, ax = plt.subplots(figsize = (8, 8))

# Plot puntos
gdf_utm.plot(ax = ax, color = 'blue', markersize = 1, alpha = 0.3)

# Añadir tiles (contextily necesita CRS compatible, normalmente 3857)
# Convertir a 3857 para el tile
gdf_webmerc = gdf_utm.to_crs(epsg = 3857)
ax = gdf_webmerc.plot(ax = ax, color = 'blue', markersize = 1, alpha = 0.3)

# Añadir fondo tipo Esri (o CartoDB, OSM, etc.)
ctx.add_basemap(ax, source = ctx.providers.Esri.WorldStreetMap)

Sistema de referencia de coordenadas

Los CRS permiten identificar con exactitud la posición de los datos sobre el globo terráqueo.

Tip

Cuando se trabaja con datos espaciales procedentes de distintas fuentes de información es necesario comprobar que las coordenadas correspondientes a dichos datos se encuentran definidas en el mismo CRS.

Tip

Esto se consigue transformándolas (o proyectándolas) a un CRS común.

A continuación se muestra un mapa mundial con la representación en puntos (rojos) de los puertos que existen.

¿Que podemos ver en el gráfico?

  • Las coordenadas del mapa y las coordenadas de la base de datos se encuentran en diferentes referencias (CRS)

Los tipos de CRS que existen son los siguientes:

  1. Geográficos: aquellos en los que los parámetros empleados para localizar una posición espacial son:

    • La latitud (Norte-Sur): [\(-90º, 90º\)]
    • La longitud (Este−Oeste): [\(-180º, 180º\)]
    • Están basados en la geometría esférica (las distancias entre dos puntos son distancias angulares)
  2. Proyectados: permiten reducir la superficie de la esfera terrestre (3D) a un sistema cartesiano (2D).

    • Es necesario transformar las coordenadas longitud y latitud en coordenadas cartesianas 1 X e Y
    • La unidad de distancia, habitualmente, es el metro

Seguimos con el ejemplo de los puertos marítimos y proyectamos los puertos en el mismo CRS que el mapamundi utilizando la proyección de Robinson1 (la proyección cartográfica más popular para mapamundis)

st_crs(puertos) == st_crs(paises_robin)
[1] FALSE
puertos_robin <- st_transform(puertos, st_crs(paises_robin))
plot(st_geometry(paises_robin), main = " ")
plot(st_geometry(puertos_robin), add = TRUE, col = 4, pch = 20)

Seguimos con el ejemplo de los puertos marítimos y proyectamos los puertos en el mismo CRS que el mapamundi utilizando la proyección de Robinson1 (la proyección cartográfica más popular para mapamundis)

R packages

El paquete crsuggest facilita la elección de la proyección más conveniente, al sugerir transformaciones de sistemas de referencia de coordenadas adecuadas para conjuntos de datos espaciales. Devuelve un marco de datos con códigos CRS que se pueden utilizar para proyectos de transformación y mapeo CRS.

Formatos de datos espaciales

En el ámbito del análisis espacial los datos espaciales pueden tener formato vector (o datos vectoriales) o formato raster (raster o rasterizados o mapa de bits).

Los datos vectoriales pueden representar tres tipos distintos de entidades: puntos, líneas y polígonos, y, quizás, su característica más importante es que cada punto, línea o polígono puede tener una tabla de atributos asociados.

Los datos raster, son una malla (una matriz) donde cada celda (o píxel) tiene un tamaño similar y un valor específico.

Cuando se tiene una imagen en color, el raster está compuesto por 3 matrices sobrepuestas, cada una con el valor del color primario correspondiente.

Cuando se utilizan imágenes de satélite u otros sensores cada archivo puede contener hasta cientos de matrices que representan distintos rangos de lo observado.

Datos vectoriales

Este modelo de datos está basado en puntos georreferenciados. Los puntos, por ejemplo, representan localizaciones específicas.

ggplot() +
  geom_sf(data = mercadona$osm_points, 
          aes(fill = "Mercadona"), 
          color = "lightgreen") +
  labs(title = NULL, fill = NULL) +
  theme_minimal() +
  theme(legend.position = "right")

Los puntos también pueden estar conectados entre sí, de manera que formen geometrías más complejas, como líneas y polígonos. El río Tajo está representado como una línea (tajo, sucesión de puntos unidos entre sí) y la ciudad de Toledo como un polígono (toledo, línea de puntos cerrada formando un espacio continuo).

ggplot(toledo) +
  geom_sf(fill = "cornsilk2") +
  geom_sf(data = tajo, col = "lightblue2", lwd = 2, alpha = 0.7) +
  geom_sf(data = hosp_toledo, col = "blue") +
  coord_sf(xlim = c(-4.2, -3.8), ylim = c(39.8, 39.95)) +
  theme_minimal()

Las extensiones más habituales de los archivos que contienen datos de vectores son las siguientes:

Tipo Extensión
Shapefile .shp, .shx, .dbf
GeoPackage vector .gpkg
GeoJson .geojson
GPX .gpx
Geography Markup Language .gml
Keyhole Markup Language .kml
Otros .csv, .txt, xlsx

R packages

ESRI Shapefile surgió como uno de los primeros formatos de intercambio de datos geográficos y en la actualidad es, quizá, el formato más empleado. Sin embargo, tiene una serie de limitaciones: es un formato multiarchivo y el CRS es opcional.

Datos en Raster

Los datos raster son datos proporcionados en una rejilla de píxeles (regulares o no) denominada matriz.

El caso más popular de un raster es una fotografía. La imagen se representa como una serie de celdas, determinadas por la resolución de la imagen (el tamaño del píxel, 5x5 (regular) y 10x10 (irregular)) y el valor del píxel (RGB –red, green, blue–) que determina el color que presenta cada uno de estos píxeles.

En el ámbito de los datos espaciales, un archivo raster está formado por una malla de píxeles georreferenciada.

Las extensiones más habituales de los archivos que contienen datos raster son las siguientes:

Tipo Extensión
ASCII Grid .asc
GeoTIFF .tif, .tiff
Enhanced Compression Wavelet .ecw

Como ejemplo, vamos a cargar la base de datos de nueva zelanda.

Creación de mapas

Para poder seguir con la sesión de hoy, necesitaremos instalar el paquete CDR. Para ello deberemos de seguir las siguientes indicaciones:

install.packages("remotes")
remotes::install_github("cdr-book/CDR")

Mapas estáticos

Los mapas estáticos son el tipo de resultado visual más común de la geocomputación. Suelen almacenarse en formatos estándar, como .png y .pdf para salidas gráficas ráster y vectoriales, respectivamente.

La función genérica plot() suele ser la forma más rápida de crear mapas estáticos a partir de objetos espaciales vectoriales y ráster por su simplicidad y la velocidad.

tmap es un paquete de creación de mapas potente y flexible con valores predeterminados.

Su sintaxis concisa permite crear mapas atractivos con un mínimo de código (muy similar a ggplot2). Ofrece la posibilidad de generar mapas estáticos e interactivos utilizando el mismo código mediante tmap_mode().

Conceptos básicos

Añadir el interior

g1 <- tm_shape(nz) +
  tm_fill() 

Añadir el contorno

g2 <- tm_shape(nz) +
  tm_borders() 

Añadir ambos (También qtm())

g3 <- tm_shape(nz) +
  tm_fill() +
  tm_borders() 

<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream

Ver https://r.geocompx.org/adv-map para saber mas.

=======

Ver https://r.geocompx.org/adv-map para saber mas.

>>>>>>> Stashed changes =======

Ver https://r.geocompx.org/adv-map para saber mas.

>>>>>>> Stashed changes =======

Ver https://r.geocompx.org/adv-map para saber mas.

>>>>>>> Stashed changes

Mapa de la renta

Concretamente, se representa la distribución de la renta neta per cápita (renta_municipio_data) por municipio (municipios) en España en el año 2019.

El primer paso será integrar los ficheros renta_municipio-data y municipios, los cuales deben tener un campo en común (codigo_ine), para unir.

munis_renta <- municipios |>
  left_join(renta_municipio_data) |>
  select(name, cpro, cmun, `2019`)    

El siguiente paso es la representación gráfica de estos datos en el mapa.

grafico <- ggplot(munis_renta) +
  geom_sf(aes(fill = `2019`), color = NA) +
  scale_fill_continuous(
    labels = scales::label_number(
      big.mark = ".", decimal.mark = ",", suffix = " €" )) +
  theme_minimal()
print(grafico)

Podemos ver que es un mapa temático de coropletas. Un gráfico de coropletas es una visualización sencilla de cómo varía la distribunción de una variable.

Si visualizamos el contenido del objeto munis_renta pueden verse una serie de elementos gráficos característicos de los objetos espaciales:

head(munis_renta)[1:3, ]
Simple feature collection with 3 features and 4 fields
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: -3.140179 ymin: 36.73817 xmax: -2.741701 ymax: 37.24562
Geodetic CRS:  ETRS89
      name cpro cmun  2019                           geom
1     Abla   04  001 10192 MULTIPOLYGON (((-2.775594 3...
2 Abrucena   04  002 10021 MULTIPOLYGON (((-2.787566 3...
3     Adra   04  003  8192 MULTIPOLYGON (((-3.051988 3...
  • Los datos son de tipo vector
  • El tipo de geometría es MULTIPOLYGON
  • El CRS es ETRS89
  • Leyenda explica el significado de la variable.

Atención !!! Cuidado cómo se miente en los mapas

A veces, cuando se crea un mapa de coropletas la información puede aparecer distorsionada.

Por ello, para la correcta visualización de los datos que favorezca una interpretación realista es necesario tomar una serie de decisiones:

  1. El número de intervalos (cortes o límites de intervalos) en caso de distribución por intervalos.

  2. La escala de color a utilizar.

  3. El tratamiento de los valores perdidos.

Los mapas de coropletas muestran la distribución espacial de una variable cuyos valores se dividen en clases o intervalos a los cuales se les aplica un esquema de colores, también llamado paleta, dónde a cada clase le corresponde un color de la paleta.

Existen muchas formas para agrupar los valores de una variable en clases pero el método de Fisher-Jenks es el más popular en los mapas temáticos y en especial, en los de coropletas.

R packages

El método de agrupación de datos de Fisher-Jenks utiliza un algoritmo no lineal para agrupar observaciones de modo que se maximice la homogeneidad dentro del grupo y la heterogeneidad entre los mismos.

Este algoritmo está desarrollado específicamente para la clasificación de datos espaciales y su visualización en mapas.

A continuación, vamos a realizar el mapa de la renta neta per cápita en España, a escala municipal, en 2019 con los intervalos realizados con Fisher-Jenks

# crea Fisher-Jenks clases
fisher <- classIntervals(munis_renta_clean$`2019`, style = "fisher", n = 10)
ggplot(munis_renta_clean) +
  geom_sf(aes(fill = cut(`2019`, fisher$brks)), color = NA) +
            scale_fill_viridis_d(option= "A" , 
                                 labels= scales::label_number(suffix= "€")) +
guides(fill = guide_colorsteps()) +
  labs(fill= "Fisher-Jenks") +
theme_minimal()

Mapa facetados

Los mapas facetados se componen de muchos mapas dispuestos uno junto al otro, y a veces apilados verticalmente.

Las facetas permiten visualizar cómo cambian las relaciones espaciales con respecto a otra variable, como el tiempo.

Normalmente, todas las facetas individuales de un mapa facetado contienen los mismos datos geométricos repetidos varias veces, una por cada columna de los datos de atributos (este es el método de representación gráfica predeterminado para sfobjetos).

urb_1970_2030 = urban_agglomerations |> 
  filter(year %in% c(1970, 1990, 2010, 2030))

tm_shape(world) +
  tm_polygons() +
  tm_shape(urb_1970_2030) +
  tm_symbols(fill = "black", col = "white", size = "population_millions") +
  tm_facets_wrap(by = "year", nrow = 2)

Mapas insertados

Un mapa insertado es un mapa más pequeño que se representa dentro o junto al mapa principal. Puede tener diversas funciones, como proporcionar contexto o acercar regiones no contiguas para facilitar su comparación.

También se pueden usar para enfocar un área más pequeña con más detalle o para cubrir la misma área que el mapa, pero representando un tema diferente.

Los mapas insertados también se utilizan para crear un mapa de áreas no contiguas. Probablemente, el ejemplo más común es el mapa de Estados Unidos, que incluye los Estados Unidos contiguos, Hawái y Alaska. En estos casos, es fundamental encontrar la mejor proyección para cada recuadro.

us_states_map = tm_shape(us_states, crs = "EPSG:9311") + 
  tm_polygons() + 
  tm_layout(frame = FALSE)

El resto de nuestros objetos, hawaii y alaska, ya tienen proyecciones adecuadas; por lo tanto, solo necesitamos crear dos mapas separados:

hawaii_map = tm_shape(hawaii) +
  tm_polygons() + 
  tm_title("Hawaii") +
  tm_layout(frame = FALSE, bg.color = NA, 
            title.position = c("LEFT", "BOTTOM"))
alaska_map = tm_shape(alaska) +
  tm_polygons() + 
  tm_title("Alaska") +
  tm_layout(frame = FALSE, bg.color = NA)

El mapa final se crea combinando, redimensionando y organizando estos tres mapas:

us_states_map
print(hawaii_map, vp = grid::viewport(0.35, 0.1, width = 0.2, height = 0.1))
print(alaska_map, vp = grid::viewport(0.15, 0.15, width = 0.3, height = 0.3))

Mapas espaciotemporales

La dimensión temporal cobra cada vez más relevancia en el ámbito espacial, y por ello es importante representar en el tiempo los procesos espaciales.

Vamos a representar la temperatura mínima registrada en España del 6 al 10 de enero de 2021, durante la Borrasca Filomena.

tmin_sf <- st_as_sf(tempmin_data, 
  coords = c("longitud", "latitud"),
  crs = 4326) # coordenadas geográficas longitud/latitud WGS84

esp <- esp_get_ccaa() |> # sf objeto, contorno de España
        filter(ine.ccaa.name != "Canarias") # excluye Canarias
st_crs(tmin_sf) == st_crs(esp)
[1] FALSE
esp2 <- st_transform(esp, st_crs(tmin_sf))
st_crs(tmin_sf) == st_crs(esp2)
[1] TRUE

Muestramos la localización de las estaciones que registran la temperatura en España.

ggplot(esp2) +
  geom_sf() +   
  geom_sf(data = tmin_sf) 

A continuación realizamos el mapa correspondiente a las temperaturas dividido por diferentes dias.

# definición de intervalos
cortes <- c(-Inf, seq(-20, 20, 2.5), Inf)
colores <- hcl.colors(15, "PuOr", rev = TRUE)

tmin_sf_sptem <- tmin_sf |>
  arrange(fecha, desc(tmin))

gr <- ggplot() +
  geom_sf(data = esp2, fill = "grey95") +
  geom_sf(data = tmin_sf, aes(color = tmin), 
          size=3, alpha= .7) +
  facet_wrap(vars(fecha),ncol = 3) + 
  labs(color = "Temp. mím") +
  scale_color_gradientn(
    colours = colores,
    breaks = cortes,
    labels = ~str_c(. , "º"),
    guide = "legend") +
    theme_light()

Mapas animados

Los mapas facetados permiten mostrar cómo cambian las distribuciones espaciales de las variables pero este enfoque presenta desventajas, que son:

  • Las facetas se vuelven diminutas cuando hay muchas.
  • cada faceta esté físicamente separada en la pantalla (diferencias sutiles entre ellas pueden ser difíciles de detectar).

Los mapas animados resuelven estos problemas. Esto se puede resolver con el paquete tmap (utilizaremos a continuación) o el gganimate() de ggplot2.

A continuación vamos a crear el nuestro gráfico animado:

urb_anim <- tm_shape(world) + tm_polygons() + 
  tm_shape(urban_agglomerations) + 
  tm_symbols(size = "population_millions") +
  tm_facets_wrap(by = "year", nrow = 1, 
                 ncol = 1, free.coords = FALSE)
tmap_animation(urb_anim, filename = "urb_anim.gif", 
               delay = 25)

Mapas interactivos

Si bien los mapas estáticos y animados pueden revitalizar los conjuntos de datos geográficos, los mapas interactivos pueden llevarlos a un nuevo nivel.

El desarrollo de la informática ha propiciado también el desarrollo de la geocomputación, que está relacionada con los desarrollos webs y permite, entre otras cosas, la representación de mapas interactivos.

Estos mapas dinámicos, ampliables y desplazables son más informativos que los mapas estáticos y, además, constituyen una alternativa que puede proporcionar al usuario una experiencia diferente, además de una mayor interacción.

<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream =======

>>>>>>> Stashed changes =======

>>>>>>> Stashed changes =======

>>>>>>> Stashed changes

A través de la función tmap_mode("view") nos permite pasar de un mapa estático a un mapa interactivo.

map_nz = tm_shape(nz) + tm_polygons()
tmap_mode("view")
map_nz
<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream
=======
>>>>>>> Stashed changes =======
>>>>>>> Stashed changes =======
>>>>>>> Stashed changes
world_coffee = left_join(world, coffee_data, 
                         by = "name_long")
facets = c("coffee_production_2016", "coffee_production_2017")
tm_shape(world_coffee) + 
  tm_polygons(facets) + 
  tm_facets_wrap(nrow = 1, sync = TRUE)
<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream
======= ======= >>>>>>> Stashed changes ======= >>>>>>> Stashed changes
<<<<<<< Updated upstream <<<<<<< Updated upstream >>>>>>> Stashed changes ======= >>>>>>> Stashed changes ======= >>>>>>> Stashed changes

Otra forma: mapview

tmap_mode("plot")
oberfranken = subset(franconia, district == "Oberfranken")
trails |>
  st_transform(st_crs(oberfranken)) |>
  st_intersection(oberfranken) |>
  st_collection_extract("LINESTRING") |>
  mapview(color = "red", lwd = 3, layer.name = "trails") +
  mapview(franconia, zcol = "district") +
  breweries
<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream
=======
>>>>>>> Stashed changes =======
>>>>>>> Stashed changes =======
>>>>>>> Stashed changes

Mapa de Snow interactivo

Vamos a representar la versión interactiva del mapa de Snow. Para ello se utiliza la librería leaflet.

data("snow_deaths")
data("snow_pumps")

## crea mapa interactivo
snow_map <- leaflet() |>
  setView(lng = -0.136, lat = 51.513, zoom = 16) |>
  addTiles() |>
  addMarkers( data = snow_deaths, ~long, ~lat,
    clusterOptions = markerClusterOptions(),
    group = "Deaths" ) |>
  addMarkers(data = snow_pumps, ~long, ~lat,
    group = "Pumps" )
<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream
=======
>>>>>>> Stashed changes =======
>>>>>>> Stashed changes =======
>>>>>>> Stashed changes

A tener en cuenta 🗒️

Referentes actuales del mundo del Geospacial

Dominic Royé Climatólogo y educador de R con un gran compromiso con la comunidad. Su investigación se centra en la biometeorología, entre otros temas, y en la relación entre la salud humana y el medio ambiente atmosférico. Sus proyectos comunitarios valoran la colaboración entre las herramientas de código abierto, la alfabetización de datos y la graficación como una forma de generar poder e impulsar el cambio.

Jakub Nowosad Geógrafo computacional y trabaja entre la geocomputación y las ciencias ambientales. Su investigación se centra en el desarrollo y la aplicación de métodos espaciales para ampliar la comprensión de los procesos y patrones ambientales. Parte fundamental de su trabajo es crear, colaborar y mejorar software geocomputacional. Miembro activo de la comunidad #rspatial y coautor de los libros “Geocomputación con R” y “Geocomputación con Python”.

Bibiligrafia

El proyecto consistió en poder alojar contenido sobre Geocomputación con R. Desde la publicación de dicho libro en 2019, la comunidad en torno al libro ha crecido e incluye una comunidad emergente llamada «geocompy» y el proyecto de libro de código abierto asociado, Geocomputación con Python. Quedó claro que el nombre «geocompr» ya no era apropiado para la naturaleza multilingüe del proyecto.

Paquetes de R para el Geospacial

Paquetes de Python para el Geospacial

¿Y cuál es el futuro que nos espera?

Linias futuras